package com.lancoo.ccas53.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * <p>
 * 教学班对应上课周数
 * </p>
 *
 * @author quin.song
 * @since 2024-05-31
 */
@Data
@Accessors(chain = true)
@TableName("teaching_class_week")
@ApiModel(value = "TeachingClassWeek对象", description = "教学班对应上课周数")
public class TeachingClassWeek implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    private Long teachingClassId;

    @ApiModelProperty("周次，用字符串表示二进制形式")
    private String week;

    @ApiModelProperty("总学时")
    private Integer totalHour;

    @ApiModelProperty("需要排课的总学时")
    private Integer needScheduleHour;

    @ApiModelProperty("周学时")
    private Integer weekNum;

    @ApiModelProperty("连上节次")
    private Integer connectSection;

    @ApiModelProperty("连上次数")
    private Integer connectNumber;

    @ApiModelProperty("场地类型")
    private Integer roomType;

    @ApiModelProperty("场地类型名")
    private String roomTypeName;

    @ApiModelProperty("教学班授课类型指定教室")
    private Long roomId;

    private String roomName;

    @ApiModelProperty("0:环节  1讲授 2实验 3上机 4其他")
    private Integer hourType;
    @ApiModelProperty("1未锁定 2锁定")
    private Integer isLocked;

    @ApiModelProperty("0:环节  1讲授 2实验 3上机 4其他")
    private Integer scheduleState;

    @ApiModelProperty("是否设置规则 1：已设置，2未设置")
    private Integer ruleSet;

    @TableField(exist = false)
    @ApiModelProperty("授课类型名称")
    private String hourTypeName;
}
